﻿/*----------------------------------------------------------------
//Copyright (C) 2012 赵国伟
//文件功能描述：权限资源管理客户端脚本
//创建人：赵国伟
//生成时间：2012/03/18 12:15:00
//----------------------------------------------------------------*/
var SelectOptionOfGroups;
var ModelOfRes;
var PurviewResourceID = 0;
var AjaxServerUrl = "/Manage/AS/PrivilegeCommon.aspx";
var CheckOptionOfOperates = "";
var ResourceEnumString = "";

///初始化；
function Init() {
    PurviewResourceID = 0;
}

///删除指定的菜单资源信息；
function Delete(resourceId) {
    var tips = "确定要删除该菜单资源吗？";
    if (!confirm(tips))
        return false;
    var url = AjaxServerUrl + "?Action=DeleteResource&PurviewResourceID=" + resourceId;
    AjaxGet(url, null, "删除成功！");
}

function Add() {
    Init();
    GetPopupDiv(500, 610, "#e2e2e2", "添加菜单资源", GetResourceHtmlForm());
}
function Edit(id) {
    Init();
    PurviewResourceID = id;
    GetPopupDiv(500, 610, "#e2e2e2", "菜单资源编辑", GetResourceHtmlForm());
    BindResourceInfoToForm();
}

//获取资源枚举
function GenerateResEnum() {
    GetPopupDiv(600, 610, "#e2e2e2", "资源枚举", function () {
        var html = new Array();
        html.push("<table width=\"600\" height=\"78\" border=\"0\" cellpadding=\"0\" cellspacing=\"1\" bgcolor=\"#cccccc\">");
        html.push("  <tr>");
        html.push("    <td width=\"81\" align=\"center\" valign=\"top\" bgcolor=\"#FFFFFF\"><br />");
        html.push("    资源枚举</td>");
        html.push("    <td  valign=\"top\" bgcolor=\"#FFFFFF\">");
        html.push("<textarea  readonly=\"readonly\" cols=\"80\" rows=\"20\" >" + ResourceEnumString + "</textarea>");
        html.push(" </td>");
        html.push("  </tr>");
        html.push("  <tr>");
        html.push("    <td colspan=\"2\" align=\"center\" bgcolor=\"#FFFFFF\">");
        html.push("        <input type=\"button\" name=\"btnCloseForm\" value=\"关闭窗口\" class=\"btn2\" onclick=\"yesOther(false);\"></td>");
        html.push("  </tr>");
        html.push("</table>");
        return html.join("");
    });
}



//绑定资源信息到录入表单中；
function BindResourceInfoToForm() {
    $("#btnSave").attr("disabled", true);
    var url = AjaxServerUrl + "?Action=GetResource&PurviewResourceID=" + PurviewResourceID + "&tttt=" + Math.random();
    $.ajax(
    {
        type: "Get",
        url: url,
        dataType: "json",
        success: function (dataInfo) {
            if (dataInfo != null) {
                $("#ddlPurviewGroupID").val(dataInfo.Res._purviewgroupid)
                $("#txtResourceName").val(dataInfo.Res._resourcename);
                $("#txtResourceUrl").val(dataInfo.Res._resourceurl);
                $("#txtOrderValue").val(dataInfo.Res._ordervalue);
                $("#chkIsInMenuTree").attr("checked", dataInfo.Res._isinmenutree);
                $("#chkIsPopUp").attr("checked", dataInfo.Res._ispopup);
                $("#ddlStatus").val(dataInfo.Res._status);
                //设置操作属性默认值；
                if (dataInfo.Operates != null) {
                    var ids = "";
                    for (var i = 0; i < dataInfo.Operates.length; ++i) {
                        if (ids == "")
                            ids = dataInfo.Operates[i]._id;
                        else
                            ids += "," + dataInfo.Operates[i]._id;
                    }
                    SetCheckObjectDefaultValue("chkOperateId", ids);
                }
                $("#btnSave").attr("disabled", false);
            }
        }
    });
}

//检测资源录入表单；
function CheckForm() {
    if ($("#ddlPurviewGroupID").val().trim() == "") {
        alert("提示：请选择资源分组！");
        $("#ddlPurviewGroupID").focus();
        return false;
    }
    if ($("#txtResourceName").val().trim() == "") {
        alert("提示：请输入资源名称！");
        $("#txtResourceName").focus();
        return false;
    }
    if ($("#txtResourceUrl").val().trim() == "") {
        alert("提示：请输入资源Url！");
        $("#txtResourceUrl").focus();
        return false;
    }
    if ($("#txtOrderValue").val().trim() == "") {
        alert("提示：请输入排序值！");
        $("#txtOrderValue").focus();
        return false;
    }
    if (!IsNumber($("#txtOrderValue").val().trim())) {
        alert("提示：排序值必须为数字！");
        $("#txtOrderValue").focus();
        return false;
    }
    return true;
}

//保存资源信息；
function Save() {
    $("#btnSave").attr("disabled", true);  //将提交按钮置为无效；
    //检测表单数据；
    if (!CheckForm()) {
        $("#btnSave").attr("disabled", false);
        return false;
    }
    var dataInfo = clone(ModelOfRes);
    dataInfo._purviewresourceid = PurviewResourceID;
    dataInfo._purviewgroupid = $("#ddlPurviewGroupID").val();
    dataInfo._resourcename = $("#txtResourceName").val();
    dataInfo._resourceurl = escape($("#txtResourceUrl").val());
    dataInfo._ordervalue = $("#txtOrderValue").val();
    dataInfo._isinmenutree = $("#chkIsInMenuTree").attr("checked");
    dataInfo._status = $("#ddlStatus").val();
    dataInfo._ispopup = $("#chkIsPopUp").attr("checked");
    dataInfo._createdate = "/Date(" + CurrentDateStringToUTC() + ")/";

    var selectOperateIds = GetCheckObjectValues("chkOperateId");

    var postData = "jsonData=" + JSON.stringify(eval(dataInfo));
    postData += "&selectOperateIds=" + selectOperateIds;

    //开始提交表单数据；
    var url =AjaxServerUrl + "?Action=SaveResource" ;
    AjaxPostEx(url, "btnSave", postData);
}


///菜单资源基本信息表单框
function GetResourceHtmlForm() {
    var html = new Array();
    html.push("<table width=\"500\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" class=\"table\" bgcolor=\"#e2e2e2\">");
    html.push("<tr>");
    html.push("<td width=\"80\" height=\"25\" align=\"right\" bgcolor=\"#FFFFFF\">所属分组：</td>");
    html.push("<td width=\"420\" height=\"25\" bgcolor=\"#FFFFFF\"><select name=\"ddlPurviewGroupID\" id=\"ddlPurviewGroupID\"><option value=\"\">----请选择资源分组----</option>");
    html.push(SelectOptionOfGroups);
    html.push("</select> *</td>");
    html.push("</tr>");

    html.push("<tr>");
    html.push("<td height=\"25\" align=\"right\" bgcolor=\"#FFFFFF\">资源名称：</td>");
    html.push("<td height=\"25\" bgcolor=\"#FFFFFF\"><input name=\"txtResourceName\" id=\"txtResourceName\" type=\"text\" size=\"25\" class=\"border2\" /> *</td>");
    html.push("</tr>");

    html.push("<tr>");
    html.push("<td height=\"25\" align=\"right\" bgcolor=\"#FFFFFF\">资源Url：</td>");
    html.push("<td height=\"25\" bgcolor=\"#FFFFFF\">/<input name=\"txtResourceUrl\" id=\"txtResourceUrl\" type=\"text\" size=\"45\" class=\"border2\"  /> *</td>");
    html.push("</tr>");
    
    html.push("<tr>");
    html.push("<td height=\"25\" align=\"right\" bgcolor=\"#FFFFFF\">排序值：</td>");
    html.push("<td height=\"25\" bgcolor=\"#FFFFFF\"><input name=\"txtOrderValue\" id=\"txtOrderValue\" type=\"text\" value=\"0\" size=\"5\"  class=\"border2\"  /></td>");
    html.push("</tr>");

    html.push("<tr>");
    html.push("<td height=\"25\" align=\"right\" bgcolor=\"#FFFFFF\">&nbsp;</td>");
    html.push("<td height=\"25\" bgcolor=\"#FFFFFF\"><label for=\"chkIsInMenuTree\" style=\"cursor:hand;\"><input type=\"checkbox\" id=\"chkIsInMenuTree\" name=\"chkIsInMenuTree\" value=\"1\" checked /><font color=red>是否出现在菜单树中</font></label>&nbsp;&nbsp;<label for=\"chkIsPopUp\" style=\"cursor:hand;\"><input type=\"checkbox\" id=\"chkIsPopUp\" name=\"chkIsPopUp\" value=\"1\"  />是否弹出</label></td>");
    html.push("</tr>");

    html.push("<tr>");
    html.push("<td height=\"25\" align=\"right\" bgcolor=\"#FFFFFF\">资源状态：</td>");
    html.push("<td height=\"25\" bgcolor=\"#FFFFFF\"><select name=\"ddlStatus\" id=\"ddlStatus\"> <option  value=\"正用\">正用</option><option value=\"停用\">停用</option></select></td>");
    html.push("</tr>");

    html.push("<tr>");
    html.push("<td height=\"25\" align=\"right\" bgcolor=\"#FFFFFF\">资源操作：</td>");
    html.push("<td height=\"25\" bgcolor=\"#FFFFFF\">");
    html.push(CheckOptionOfOperates);
    html.push("</td>");
    html.push("</tr>");

    html.push("<tr>");
    html.push("<td height=\"25\"  colspan=\"2\" bgcolor=\"#FFFFFF\" align=\"center\"><input type=\"button\" id=\"btnSave\" name=\"btnSave\" value=\" 保 存 \" class=\"btn2\" onclick=\"Save();\" /> &nbsp;&nbsp; <input type=\"button\" name=\"btnClose\" value=\"关闭窗口\" class=\"btn2\" onclick=\"yesOther(false);\" /></td>");
    html.push("</tr>");

    html.push("</table>");

    return html.join("");
}









